Game Description Language Compiler Construction
نویسندگان
چکیده
We describe a multilevel algorithm compiling a general game description in GDL into an optimized reasoner in a low level language. The aim of the reasoner is to efficiently compute game states and perform simulations of the game. This is essential for many General Game Playing systems, especially if they use simulation-based approaches. Our compiler produces a faster reasoner than similar approaches used so far. The compiler is implemented as a part of the player Dumalion. Although we concentrate on compiling GDL, the developed methods can be applied to similar Prolog-like languages in order to speed up computations.
منابع مشابه
A Forward Chaining Based Game Description Language Compiler
We present a first attempt at the compilation of the Game Description Language (GDL) using a bottom-up strategy. GDL is transformed into a normal form in which rules contain at most two predicates. The rules are then inverted to allow forward chaining and each predicate will turn into a function in the target language. Adding a fact to the knowledge base corresponds to triggering a function cal...
متن کاملFrIL - A Fractal Intermediate Language
This document describes the motivation, language description, and experience using FrIL, an intermediate language for a compiler's \middle-end". FrIL has successfully supported a two-semester compiler construction sequence, where the rst semester included code generation from a C-like language and the second semester included advanced data ow analysis and program transformation.
متن کاملMultigame — A Very High Level Language for Describing Board Games
Languages with implicit parallelism are easier to program in than those with explicit parallelism, but finding and efficiently exploiting parallelism in general-purpose programming languages by parallelizing compilers is hard. A compiler for a Very High Level Language, designed for a specific application domain, has more knowledge about its application domain and may use this knowledge to gener...
متن کاملDemonstration Abstract: BNF Converter
We will demonstrate BNFC (the BNF Converter) [7, 6], a multi-lingual compiler tool. BNFC takes as its input a grammar written in LBNF (Labelled BNF) notation, and generates a compiler front-end (an abstract syntax, a lexer, and a parser). Furthermore, it generates a case skeleton usable as the starting point of back-end construction, a pretty printer, a test bench, and a LTEX document usable as...
متن کاملLow-Latency Synchronous Representations of Asynchronous Processes
We revisit a technique called round abstraction as a solution to the problem of building low-latency synchronous systems from asynchronous specifications. Although in general round abstraction is not compositional, we identify sufficient properties to guarantee correct composition, thereby proposing a framework for round abstraction that is totally correct when applied to asynchronous behaviour...
متن کامل